#include <iostream>
using namespace std;

int main()
{
    int n;
    cin >> n;
    int arr[n];
    bool flag = false;
    int res = 0;
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
    for (int i = 1; i < n - 1; i++)
    {

        if (arr[i] >= arr[i - 1])
        {
            flag = true;
        }
        if (flag && arr[i] < arr[i - 1])
        {
            flag = false;
            res++;
        }
    }
    cout << res;
    return 0;
}
/*

题目描述
给定一个数值序列，如果其中包含一个子序列，其左半部分构成一个非递减序列（即相邻两个数值，左边数值<=右边数值），
右半部分构成一个非递增序列，我们称这个序列构成一个数值山峰，如果我们用数值的下表作为x值，
数值大小作为y值绘制折线图能够更清楚表明这一点。现给定一个数值序列，
计算其中完整的山峰的个数。如果不存在山峰，输出0

输入说明
第一行一个整数n(3<=n<=100000)表示序列的长度。第二行包含n个空格隔开的整数表示序列。

输出说明
仅一行，输出一个整数，表示山峰的个数。

输入样例
12

3 1 2 2 4 3 1 1 5 7 3 5

输出样例
2

*/